package edu.gatech.mobile.scene.model;

import java.util.ArrayList;
import java.util.List;

import android.graphics.Point;
import android.location.Location;

public class ImageInfo {

	private String fileName;
	private Location location;
	private List<MaskInfo> masks;
	private float[] accelerometer;
	private boolean use;
	private Point[] horizonPoints;
	private float[] magneticField;
	private float[] orientation; //Pitch is zenith.
	private Long timeTaken;
	private float focalLength;
	private int whiteBalance;
	private float[] rotationMat;
	private String cameraParams;

	//supported by Honeycomb(3.0)
	private String ISORating;
	private String aperture;
	private String exposureTime;
		
	
	
	public Long getTimeTaken() {
		return timeTaken;
	}

	public void setTimeTaken(Long timeTaken) {
		this.timeTaken = timeTaken;
	}

	public float[] getAccelerometer() {
		return accelerometer;
	}

	public void setAccelerometer(float[] accelValues) {
		this.accelerometer = accelValues;
	}

	public ImageInfo(){
		this.masks = new ArrayList<MaskInfo>();
	}
	
	public String getFileName() {
		return fileName;
	}

	public void setFileName(String fileName) {
		this.fileName = fileName;
	}

	public List<MaskInfo> getMasks() {
		return masks;
	}

	public void setMasks(List<MaskInfo> masks) {
		this.masks = masks;
	}
	
	public String getImagePath() {
		return fileName;
	}
	
	public void setImagePath(String imagePath) {
		this.fileName = imagePath;
	}
	
	public Location getLocation() {
		return location;
	}
	
	public void setLocation(Location location) {
		this.location = location;
	}
	
	public boolean isUse() {
		return use;
	}

	public void setUse(boolean use) {
		this.use = use;
	}
	
	public void setHorizonPoints (Point[] points){
		horizonPoints = points;
	}
	
	public Point[] getHorizonPoints (){
		return horizonPoints;
	}
	
	public float[] getMagneticField() {
		return magneticField;
	}

	public void setMagneticField(float[] magneticField) {
		this.magneticField = magneticField;
	}

	public float[] getOrientation() {
		return orientation;
	}

	public void setOrientation(float[] orientation) {
		this.orientation = orientation;
	}
	
	public float getFocalLength() {
		return focalLength;
	}

	public void setFocalLength(float focalLength) {
		this.focalLength = focalLength;
	}

	public String getISORating() {
		return ISORating;
	}

	public void setISORating(String iSORating) {
		ISORating = iSORating;
	}

	public String getAperture() {
		return aperture;
	}

	public void setAperture(String aperture) {
		this.aperture = aperture;
	}

	public String getExposureTime() {
		return exposureTime;
	}

	public void setExposureTime(String exposureTime) {
		this.exposureTime = exposureTime;
	}
	
	public int getWhiteBalance() {
		return whiteBalance;
	}

	public void setWhiteBalance(int whiteBalance) {
		this.whiteBalance = whiteBalance;
	}
		
	public String getCameraParams() {
		return cameraParams;
	}

	public void setCameraParams(String cameraParams) {
		this.cameraParams = cameraParams;
	}

	public float[] getRotationMat() {
		return rotationMat;
	}

	public void setRotationMat(float[] rotationMat) {
		this.rotationMat = rotationMat;
	}
		
}


